package cn.xm.lingshi.dao;

import java.util.List;

import cn.xm.lingshi.pojo.Address;
import cn.xm.lingshi.pojo.User;
import cn.xm.lingshi.pojo.YongHu;
/**
 *
 **/
public interface YongHuDao {

	/**
	 * 根据用户的账号 
	 * @param zhangHao 用户的账号
	 * @return		用户对象
	 */
	public YongHu dengLu(String zhangHao);
	/**
	 * 查询客户注册时账号是否可用
	 * @param zhangHao
	 * @return
	 */
	public int chaXunZhuCe(String zhangHao);
	/**
	 * 添加新的用户
	 * @param yongHu	用户的对象
	 * @return			1添加成功成功   否则添加失败
	 */
	public int tianJiao(YongHu yongHu);
	
	/**
	 * 删除用户
	 * @param yonghu 用户对象
	 * @return	 1删除成功   否则删除失败
	 */
	public int shanChu(User yonghu);
	
	/**
	 * 修改用户信息
	 * @param yongHu 用户对象
	 * @return	1修改成功   否则修改失败
	 */
	public int xiuGai(User yongHu);
	
	
	/**
	 * 查询用户
	 * @param jiaoSe  	 查询的角色   -1不执行
	 * @param shuLiang	查询的数量	-1不执行
	 * @return
	 */
	public List<User> chaXun(int  jiaoSe,int shuLiang);
	/**
	 * 获取总记录数
	 * 
	 * @param queryName
	 * @param roleId
	 * @return
	 * @throws Exception
	 */
	public int queryTotalRecord(String queryName, int roleId) throws Exception;
	/**
	 * 分页查询
	 * @param offSet
	 * @param pageSize
	 * @param queryName
	 * @param roleId
	 * @return
	 * @throws Exception
	 */
	public List<User> queryUserByOffset(int offSet, int pageSize,
			String queryName, int roleId) throws Exception;
	/**
	 * 添加收货地址
	 * @param address
	 * @return
	 * @throws Exception
	 */
	public int addAddress(Address address) throws Exception;
	/**
	 * 修改指定用户密码
	 * @param userid
	 * @param password
	 * @return
	 * @throws Exception
	 */
	public int modpassword(int userid,String password) throws Exception;
	/**
	 * 收货地址
	 * @param address
	 * @return
	 * @throws Exception
	 */
	public List<Address> addAddress(int userid) throws Exception;
}
